class Solution:
    def reverse(self, x: int) -> int:
        temp=[]
        if x>2147483648 or x<-2147483647:
            return 0
        if x<0:
            sign=-1
            x=-x
        else:
            sign=1
        while x!=0:
            temp.append(x%10)
            x//=10
        result=0
        digits=len(temp)-1
        if digits>9:
            return 0
        for i,val in enumerate(temp):
            result+=val*(10 ** (digits-i))
        result = sign*result if sign*result>=-2147483648 and  sign*result<=2147483647 else 0
        return result

'''
执行用时：
40 ms
, 在所有 Python3 提交中击败了
79.61%
的用户
内存消耗：
14.5 MB
, 在所有 Python3 提交中击败了
5.03%
的用户
'''